package cn.dglydrpy.study.algorithm.od;

import java.util.Scanner;

/**
 * @author Yyy
 * @date 2024/11/13 20:12
 * @description
 * 5
 * 3 1 5 7 9
 * 8
 * 
 * 
 * 3
 */
public class Main1 {
    public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);
        while (scanner.hasNextLine()){
            Integer n = Integer.valueOf(scanner.nextLine());
            int[] arr = new int[n];
            String[] inputs = scanner.nextLine().split(" ");
            for(int i=0;i<arr.length;i++){
                arr[i] = Integer.valueOf(inputs[i]);
            }
            Integer min = Integer.valueOf(scanner.nextLine());
            int ans = myAnswer(arr,min);
            System.out.println(ans);
            
        }
    }

    private static int myAnswer(int[] arr, Integer min) {

         int ans = 0;
         // 单个数
         for(int i = 0;i<arr.length;i++){
             if(arr[i] >= min){
                 ans++;
                 // 已参加的不能再参加,置为0
                 arr[i] = 0;
             }
         }
         // 两个数
         for(int i = 0;i<arr.length;i++){
             for(int j=i+1;j<arr.length;j++){
                 if(arr[i] + arr[j]>= min){
                     ans++;

                     // 已参加的不能再参加,置为0
                     arr[i] = 0;
                     arr[j] = 0;
                 }
             }
         }
         return ans;
        
//        int ans = 0;
//        Arrays.sort(arr);
//        int L = 0;
//        int R = arr.length -1;
//        while(L < R){
//            if(arr[L] >= min){
//                ans++;
//                L ++;
//            }
//            else if(arr[R] >= min){
//                ans++;
//                R--;
//            }
//            else if(arr[L] + arr[R] >= min){
//                ans++;
//                L++;
//                R--;
//            }
//        }
//        return ans;
    }
}
